#pragma once
//#include<iostream>
#include"Scan_System.h"
#include<conio.h>

class Meniu
{
private:
	void start_page()
	{ start:
			
		int optiune = 0;

		std::cout << "    Aplicatie pentru detectarea documentelor plagiat!\n"
			"			Bine a-ti venit! \n Va rog sa introduceti datele necesare! 		\n\n"
			"	Meniu! \n"
			"=====================================================\n"
			"	1) Scanare completa (fara limita inferioara)\n"
			"	2) Scanare completa (cu limita inferioara)\n"
			"        3) Scanare Statistica                       \n"
			"	--------------------------------------------\n"
			"	4) Exit\n"
			"=====================================================\n"
			"		Optiunea dumneavoastra este : \n    ";
		std::cin >> optiune;
		if (optiune == 1)
			C_scan_No_Limit();
		else if (optiune == 2)
			C_scan_Limit();
		else if(optiune==3)
			C_statistic_scan();
		else if (optiune == 4)
				return;
		std::cout<<" \n\n\ Pentru a reveni la meniul principal apasati orice tasta...";
		getch();


		system("cls");



		goto start;

		


	
	}

	void C_scan_No_Limit()
	{
		
		char fisier_copie[200], plagiat[200];//dupa fisierul plagiat a fost facut cel copiat.... se va verifica cel copiat
		system("cls");
		std::cout << " Trebuie sa introduceti cele doua fisiere:	\n"
			"Primul fisier este cel considerat copie ( introduceti adresa): ";
		std::cin >> fisier_copie;


		std::cout << "\n  Cel de-al doilea fisier este cel considerat plagiat ( introduceti adresa ) :   ";
		std::cin >> plagiat;


			char*optiune=new char[5];

			system("cls");
			std::cout<<"    Scanare mod Normal  \n";

			std::cout<<" Doriti sa exportati rezultatele intr-un fisier text? (Da/Nu) \n";
			std::cin>>optiune;


		//cele 2 fisiere trebuie trimise mai departe catre sistemul principal de scanare
		system_S*scan_system=new subsystem_NS;	
		//SE FOLOSESTE INTERFATA SYSTEM_S
		scan_system->scan(fisier_copie,plagiat,optiune);
	}


	void C_scan_Limit() // se va considera plagiat doar daca textug comun va fi asemanator  dupa un anumit procentaj
	{
		float limit = 0;
		
		
		
		char*optiune=new char[5];

			char fisier_copie[200], plagiat[200];//dupa fisierul plagiat a fost facut cel copiat.... se va verifica cel copiat
		system("cls");
		std::cout << "\n Trebuie sa introduceti cele doua fisiere :	\n"
			"Primul fisier este cel considerat copie ( introduceti adresa): ";
		std::cin >> fisier_copie;


		std::cout << "\nCel de-al doilea fisier este cel considerat plagiat ( introduceti adresa ) : ";
		std::cin >> plagiat;

			system("cls");
			std::cout << "Introduceti procentajul de asemanare dorit: ";
			std::cin >> limit;

			system("cls");
			std::cout<<"    Scanare mod Preferinta  \n";

			std::cout<<" Doriti sa exportati rezultatele intr-un fisier text? (Da/Nu) \n";
			std::cin>>optiune;

	// se va apela metoda din sisteul central de scanare.....
		system_S*scan_system=new subsystem_AS;	
		//SE FOLOSESTE INTERFATA SYSTEM_S
		scan_system->scan(fisier_copie,plagiat,limit,optiune);

	};


	void C_statistic_scan()
	{
			char*optiune=new char[5];

			char fisier_copie[200], plagiat[200];//dupa fisierul plagiat a fost facut cel copiat.... se va verifica cel copiat
		system("cls");
		std::cout << "\n Trebuie sa introduceti cele doua fisiere :	\n"
			"Primul fisier este cel considerat copie ( introduceti adresa): ";
		std::cin >> fisier_copie;


		std::cout << "\nCel de-al doilea fisier este cel considerat plagiat ( introduceti adresa ) : ";
		std::cin >> plagiat;



			system("cls");
			std::cout<<"    Scanare mod Statistic  \n";

			std::cout<<" Doriti sa exportati rezultatele intr-un fisier text? (Da/Nu) \n";
			std::cin>>optiune;




		system_S*scan_system=new subsystem_SS;
		//SE FOLOSESTE INTERFATA SYSTEM_S
		scan_system->scan(fisier_copie,plagiat,optiune);
	
	
	}
public:


	void Menu_Method()
	{
		this->start_page();
	
	};

};